a[4][4]={1,2,3,5,1,1,5,8,6,1,10,14,2,4,2,3}输出其中重复最多的数及他头次出现的位置及重复的次数

来源:百度知道 编辑:UC知道 时间:2024/06/22 10:17:55
用VC++
包括头文件<iostream.h>

#include <map>
#include <iostream>
using namespace std;

int main()
{
int a[4][4]={1,2,3,5,14,14,5,8,6,1,10,14,14,4,2,3};
map< int, pair<int, int> > m;
int i, j;
for(i = 0; i < 4; i++){
for(j = 0; j < 4; j++){
m[a[i][j]].first++;
if(m[a[i][j]].first == 1)
m[a[i][j]].second = i * 4 +j;
}
}
map< int, pair<int, int> >::iterator mi;
int maxn = -1, maxi, maxplace;
for(mi = m.begin(); mi != m.end(); mi++){
if(mi->second.first > maxn){
maxi = mi->first;
maxplace = mi->second.first;
maxn = mi->second.first;
}
}
printf("最多次出现的数字是:%d\n", maxi);
printf("第%d行第%d列\n", maxplace / 4, maxplace % 4);
printf("出现次数:%d\n", maxn);
return 0;
}